@use "vuetify";

.beautiful-scrollbar {
    ::-webkit-scrollbar {
        width: 8px;
    }

    ::-webkit-scrollbar-track {
        background-color: transparent;
    }

    ::-webkit-scrollbar-thumb {
        background-color: transparent;
        background-clip: padding-box;
        min-height: 28px;
        -webkit-border-radius: 2em;
        -moz-border-radius: 2em;
        border-radius: 2em;
        transition: background-color 0.3s;
        cursor: pointer;
    }

    :hover::-webkit-scrollbar-thumb {
        background-color: rgba(144, 147, 153, 0.3);
    }

    ::-webkit-scrollbar-thumb:hover {
        background-color: rgba(144, 147, 153, 0.5);
    }
}

.page-main {
    display: flex;
    flex-direction: column;
    background-color: transparent;
    width: 100%;
    height: 100%;
}

.page-title {
    --page-title-height: 96px;
    height: var(--page-title-height);
    line-height: var(--page-title-height);
    width: 100%;
    font-size: 36px;
    user-select: none;
    padding-left: 16px;
}

/* 对移动中的元素应用的过渡 */
.list-scale-move,
.list-scale-enter-active,
.list-scale-leave-active {
    transition:
        opacity 0.5s ease,
        transform 0.5s ease;
}

.list-scale-enter-from,
.list-scale-leave-to {
    opacity: 0;
    transform: scale(0.9);
}

/* 确保将离开的元素从布局流中删除以便能够正确地计算移动的动画。 */
.list-scale-leave-active {
    position: absolute;
    width: 100%;
}

.slide-down-enter-active,
.slide-down-leave-active,
.slide-up-enter-active,
.slide-up-leave-active {
    transition: transform 0.2s ease;
}

.slide-down-enter-from,
.slide-up-leave-to {
    transform: translateY(-100%);
}

.slide-down-leave-to,
.slide-up-enter-from {
    transform: translateY(100%);
}

.slide-up-leave-to,
.slide-down-leave-to {
    position: absolute;
    width: 100%;
}
